package net.zjitc.android2019.note;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;

import net.zjitc.android2019.R;

/**
 * 记录页
 */
public class RecordActivity extends AppCompatActivity implements View.OnClickListener {
    ImageView back, save, delete;
    EditText ed_content;
    NoteSQLiteHelper helper;
    TextView tv_name,tv_time;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_record);
        init();
        helper=new NoteSQLiteHelper(this);
        /*默认数据展示：
        * 1）默认最上面的标题：添加记录
        * 2）若是修改：
        * 标题改成：修改记录
        * 日期控件可见
        * 设置日期控件的内容（从上一个页面传递过来的）
        * 设置文本内容（从上一个页面传递过来的 ）
        * */
        tv_name.setText("添加记录");
        Intent intent = this.getIntent();
        int id = intent.getIntExtra("id",-1);
        if (id>0){
            tv_name.setText("修改记录");
            tv_time.setText(intent.getStringExtra("time"));
            ed_content.setText(intent.getStringExtra("content"));
            /*布局文件中设置了隐藏，若是修改，设置为可见*/
            tv_time.setVisibility(View.VISIBLE);
        }

    }
    private void init() {
        back = findViewById(R.id.note_record_image_back);
        save = findViewById(R.id.note_record_image_save);
        delete = findViewById(R.id.note_record_image_delete);
        ed_content = findViewById(R.id.note_record_ed_content);
        tv_name=findViewById(R.id.note_record_tv_name);
        tv_time=findViewById(R.id.note_record_tv_time);
        /* 绑定点击事件*/
        back.setOnClickListener(this);
        save.setOnClickListener(this);
        delete.setOnClickListener(this);
    }
    /**
     * 重写的方法：点击之后要做的操作
     * @param v
     */
    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.note_record_image_back:
                finish();
                break;
            case R.id.note_record_image_save:
                /* 当内容不为空时，添加到数据库 */
                String content=ed_content.getText().toString();
                /*判断是添加还是修改：intent是否有传递过来的id*/
                Intent intent = this.getIntent();
                int id=intent.getIntExtra("id",-1);
                if (id>0){
                    /*修改*/
                    if(!TextUtils.isEmpty(content)){
                        if (helper.updateData(id,content,helper.getTime())){
                            setResult(2);
                            finish();
                            Toast.makeText(this,"修改成功",Toast.LENGTH_SHORT).show();
                        }
                    }else {
                        Toast.makeText(this,"内容不能为空",Toast.LENGTH_SHORT).show();
                    }
                }else{
                    /*添加*/
                    if(!TextUtils.isEmpty(content)){
                        if(helper.insertData(content,helper.getTime())){
                            /* 保存成功，返回到上一个页面,并且自动调用onActivityResult方法*/
                            setResult(2);
                            finish();
                            Toast.makeText(this, "保存成功", Toast.LENGTH_SHORT).show();
                        }else{
                            Toast.makeText(this, "保存失败", Toast.LENGTH_SHORT).show();
                        }
                    }else {
                        Toast.makeText(this,"内容不能为空",Toast.LENGTH_SHORT).show();
                    }
                }
                break;
            case R.id.note_record_image_delete:
                ed_content.setText("");
                break;
            default:
                break;
        }
    }
}
